package com.yiren.dbaa.module.device.contract;

import com.yiren.dbaa.currency.api.CommonCallBack;

import java.util.List;

/**
 * Created by WANGRONGXIANG
 * on 2022/7/1
 * Describe
 */
public interface BlueToothContract {

    interface Model {

        /**
         * 获取蓝牙设备列表
         *
         * @param callBack
         */
        void getDeviceList(CommonCallBack callBack);

        /**
         * 连接蓝牙
         *
         * @param btDeviceName 蓝牙设备名称
         * @param callBack
         */
        void connectBluetooth(String btDeviceName, CommonCallBack callBack);

        /**
         * 断开蓝牙
         */
        void disconnectBluetooth(CommonCallBack callBack);

        /**
         * 发送数据
         *
         * @param data
         */
        void sendData(byte[] data);
    }

    interface View {

        void setBluetoothSpinner(List<String> deviceList);
    }

    interface Presenter {

        /**
         * 获取蓝牙下拉列表
         *
         * @param view
         */
        void getBluetoothSpinner(View view);

        /**
         * 打开蓝牙
         *
         * @param btDeviceName 蓝牙设备名称
         */
        void openBluetooth(String btDeviceName);

        /**
         * 关闭蓝牙
         */
        void closeBluetooth();

        /**
         * 发送指令
         *
         * @param order
         * @param isHex
         * @param isRet 是否换行
         */
        void sendOrder(String order, boolean isHex, boolean isRet);
    }
}
